String.prototype.trim = function() { return this.replace(/^\s*|\s*$/g,''); }
String.prototype.empiezaPor = function(str) { 
	return (this.match("^"+str)==str) 
}
Array.prototype.in_array=function(){
    for(var j in this){
        if(this[j]==arguments[0]){
            return true;
        }
    }
    return false;    
} 
String.prototype.terminaEn = function(str) { 
	return (this.match(str+"^")==str);
}
String.prototype.esVacio = function () {
        var temp = this.toString(); 
        for (var i=0; i < temp.length; i++) {
                if (temp.substr(i, 1) !=("" || " ")) {
                        return false;
                }
        }
        return true;
}
String.prototype.replaceAll = function(str1,str2) {
	var text = this.toString();
	var command = "text.replace(/"+str1+"/g,\""+str2+"\")";
	return eval(command);
}
String.prototype.esEntero = function () {
        var temp = this.toString();
		var c;
		var nueva = '';
		if(temp.length==0) return false;
        for (var i=0; i < temp.length; i++) {
			c = temp.charAt(i);
			if(c>='0' && c<='9')  {
				nueva = nueva + c;	
			}
        }
		
        return (nueva==temp);
}
String.prototype.esEmail = function()
{
	return this.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/);	
}
String.prototype.esNumero = function() {
   return parseFloat(this) + '' == parseFloat(this);
}
String.prototype.esFecha = function() {	
	var fecha = this.trim();	
	var longitud = 0;
	var separador;
	var arreglo;
	if(fecha.length==0) return true;	
	longitud = fecha.length;
	if(longitud>10 || longitud<8) return false;
	separador = fecha.charAt(longitud-5);
	if(separador!="/" && separador!="-") return false;
	arreglo = fecha.split(separador);
	if(arreglo.length!=3) return false;
	var d = a_entero(arreglo[0].trim());
	var mm = a_entero(arreglo[1].trim());
	var a = a_entero(arreglo[2].trim());

	var maxdia = 31;
	if(a<1980) return false;
	if(a>2100) return false;
	
	if(mm<1 || mm>12) return false;

	if(mm==4 || mm==6 || mm==9 || mm==11) maxdia=30;
	if(mm==2) {
		maxdia = 28;	
		if(a%4==0) maxdia=29;
	}
	if(d<1 || d>maxdia) return false;	
	return true;
}

function a_entero(valor){  
   var indice = 0;
   valor2 = "";
   var i;
   while(valor.charAt(indice)=='0' || valor.charAt(indice)=='.') indice++;
   for(i=indice; i<valor.length; i++) valor2=valor2 + valor.charAt(i);		 
   valor = parseInt(valor2);  
    if (isNaN(valor)) {  
          return 0;  
    }else{  
          return valor;  
    }  
}  